from sklearn import svm
import numpy as np
import pandas as pd
import matplotlib.pyplot as plt#seaborn
from sklearn.datasets import load_iris # 导入数据集
import matplotlib
matplotlib.rcParams['font.sans-serif']=['SimHei']   # 用黑体显示中文
matplotlib.rcParams['axes.unicode_minus']=False     # 正常显示负号
from sklearn.model_selection import cross_val_score

X,y=load_iris(return_X_y=True)
#支持向量机分类器  C：默认是1.0（控制过拟合和欠拟合）C越大对过拟合惩罚越小 C越小对过拟合惩罚越严重，random_state随机数种子 为了避免评委跑出来的结果跟你的不同
model = svm.SVC(C=1.0,kernel='poly',degree=5,random_state=228)#核函数kernel可以是‘linear’线性 就不用dgree# , ‘poly’多项式 同时需要设置dgree阶数, ‘rbf’, ‘sigmoid’, ‘precomputed’
#进行拟合
clf=model.fit(X,y)
#计算k折检验
scores=cross_val_score(clf,X,y,cv=10)
print(scores)
#准确率
mean_score=np.mean(scores)
print(mean_score)
#进行预测
clf.predict(X)
print(clf.predict(X))







